import axios  from "axios";
import { Notify } from '@/composables/util.js'
import {getToken }from "@/composables/auth.js"
import store from './store'
const service = axios.create({
    baseURL: '/api',
    timeout: 1000,
  
  });
  service.interceptors.request.use(function (config) {
    // 在发送请求之前做些什么

 
    const token =getToken()
    if(token){
      config.headers['token']=token
    }




    return config;
  }, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
  });

// 添加响应拦截器
service.interceptors.response.use(
  function (response) {

    // 对响应数据做点什么
    // console.log(response.data.data)
    return response.data.data;
   
  }, function (error) {
    // 超出 2xx 范围的状态码都会触发该函数。
    // // 对响应错误做点什么
    // const flag =true
    const msg=error.response.data.msg ;
    
    if(msg=='非法token，请先登录！') {
      // flag=false
      
      store.dispatch('logout').finally(()=>{
        location.reload()
        // $router.push('/login')
      })
    
    }
  
    Notify(msg|| '请求失败',"error")
    ;
    return Promise.reject(error);
  });

  export default service